---
sidebar_position: 3
---

# 内存记忆 ( Memory )

![LangChain](https://pica.zhimg.com/50/v2-56e8bbb52aa271012541c1fe1ceb11a2_r.gif 'LangChain中文网')


默认情况下，链式模型和代理模型都是无状态的，这意味着它们将每个传入的查询独立处理（就像底层的 LLMs 和聊天模型本身一样）。在某些应用程序中，比如聊天机器人，记住先前的交互是至关重要的。无论是短期还是长期，都要记住先前的交互。**Memory** 类正是做到了这一点。
LangChain 提供了两种形式的记忆组件。首先，LangChain 提供了用于管理和操作以前的聊天消息的辅助工具。这些工具被设计成模块化的，无论如何使用都很有用。其次，LangChain 提供了将这些工具轻松整合到链式模型中的方法。
## 入门

记忆涉及在用户与语言模型的交互过程中始终保留状态的概念。用户与语言模型的交互被捕获在 ChatMessages 的概念中，因此这归结为在一系列聊天消息中摄取、捕获、转换和提取知识。有许多不同的方法可以做到这一点，每种方法都作为自己的记忆类型存在。
通常情况下，对于每种类型的记忆，有两种理解和使用记忆的方式。一种是独立的函数，从一系列消息中提取信息，然后是您可以在链式模型中使用此类型的记忆的方式。
记忆可以返回多个信息片段（例如，最近的 N 条消息和所有先前消息的摘要）。返回的信息可以是字符串或消息列表。

import GetStarted from "@snippets/modules/memory/get_started.mdx"

<GetStarted/>
